package com.example.intelligentattendancesystem.service;

import com.example.intelligentattendancesystem.pojo.User;
import com.example.intelligentattendancesystem.pojo.Work;
import org.springframework.web.bind.annotation.RequestMapping;

import java.util.List;

public interface WorkService {
    /**
     * 设置时刻表
     * @param works
     * @return
     */
    Boolean setTimeTableService(List<Work> works);

    /**
     * 获取所有的工作表(管理员)
     * 没有管理员的工作表，没有已经请假的人的工作表
     * @param userId
     * @return
     */
    List<Work> getTableService(int userId);

    /**
     * 获取时刻表格中的员工列表
     * @param startTime
     * @param endTime
     * @param week
     * @return
     */
    List<User> getWorkerListService(String startTime,String endTime,String week);

    /**
     * 删除该时刻表格的员工
     * @param work
     * @return
     */
    boolean workerDeleteService(Work work);

    /**
     * 获取该时刻表格未添加的员工
     * 该时刻表格不用获取，前端传的是时刻表格里已经有的用户
     * @param userIds
     * @return
     */
    List<User> getNoAddUserListService(List<Integer> userIds);

    /**
     * 添加work表
     * @param work
     * @return
     */
    boolean workerInsertService(Work work);

    /**
     * 获取员工所有的工作表（员工）
     * @param userId
     * @return
     */
    List<Work> getUserTableService(int userId);

    /**
     * 修改时刻表
     * @param works
     * @return
     */
    int modifyTimeTable(List<Work> works);

    /**
     * 删除时间
     * @param work
     * @return
     */
    int deleteTimeTable(Work work);
}
